Skip to content
GitHub

Git Base

Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency

Git 是一个开源的文件版本控制器

  • 在云端仓库, 本地仓库, 任意位置传输文件
  • 记录代码和文件的改动及状态
  • 回溯到已记录的某个节点
  • 分布式版本控制器

Git 官网下载安装

 $ git --version                                 # 检查 git 是否安装
 > git version 1.8.3.1

 $ yum install git                               # Centos Redhat 系统使用 yum 安装
 $ sudo apt-get install git                      # Ubuntu Debian 系统使用 apt

git-config - Get and set repository or global options

将文件或代码上传云端时, 需要设置用户名和邮箱, Git 用户和邮箱有 3 个等级

levelfileintroduce
system/etc/gitconfig系统上每一个用户及他们仓库的通用配置(不常用)
global~/.gitconfig当前系统用户, 这会对你系统上所有的仓库生效
local.git/config在仓库内默认使用 local 配置(优先级最高)
 $ git config --list --show-origin               # 查看所有配置及所在的文件, 早期版本不支持

 $ git config --system --list                    # 查看系统的 git 配置
 $ git config --global --list                    # 查看系统当前用户的 git 配置
 $ git config --local --list                     # 查看当前库的 git 配置
 $ git config --list                             # 列出上述所有配置, 可能出现重复项
 > user.name=John
 > core.editor=vim
 $ git config -e                                 # 编辑配置文件
 $ git config --global core.editor vim           # 修改系统当前用户的 git 编辑器为 vim
 $ git config --global color.ui true             # 系统当前用户的 git 输出显示颜色
 $ git config --global commit.template <file>    # 设置 commit 签名模板

 $ git config --global user.name John          # 设置系统当前的 git 用户名为 John
 $ git config user.name                          # 查看当前使用的 git 用户名

 $ git config --global user.email abc@email      # 设置系统当前的 git 邮箱为 abc@email
 $ git config user.email                         # 查看当前使用的 git 用户名

 $ git config --list                             # 列出上述所有配置, 可能出现重复项
 > user.name=John
 > user.email=abc@email
 > core.editor=vim
区域位置介绍
本地仓库当前 .git记录文件当前状态生成一个版本并保存至本地仓库
远程仓库网络平台将当前记录的所有版本上传到远程仓库

在本地任意位置使用 git init 即可创建一个本地仓库

工作区 — git add —> 暂存区 — git commit —> 本地仓库

 $ git init                                      # 初始化本地仓库
 $ git add --all                                 # 追踪本地仓库所有修改
 $ git commit -m "version message"               # 生成可回溯的版本
 $ git push <repository name> <branch name>      # 将本地仓库分支所有版本推送到远程仓库对应分支

 $ git log                                       # 查看记录的版本
 > commit d2716b6e88567c3fdfe390580d48ca82b581c04f (HEAD -> master)
 > Author: John <root@John>
 > Date:   Mon Jan 30 22:09:15 2023 +0800
 >
 >  version message

将本地仓库上传到远程仓库, 或从远程仓库下载文件到本地

 $ git clone <repository link>                   # 克隆远程仓库项目到本地
 $ git add --all                                 # 追踪本地仓库所有修改
 $ git commit -m "version message"               # 生成可回溯的版本
 $ git push <repository name> <branch name>      # 将本地仓库分支所有版本推送到远程仓库对应分支

 $ git remote -v                                 # 查看远程仓库
 > origin  git@github.com:John/Learning.git (fetch)
 > origin  git@github.com:John/Learning.git (push)

 # Github 创建空白仓库, gitignore README LICENSE 均设空
 $ git remote add origin <Repository url>        # 将远程仓库命名为 origin 并关联本地仓库
 $ git branch -M main
 $ git push -u origin main